using Framework.Core.Io;

namespace Framework.Core.Process
{
    public sealed class Process : IProcess
    {
        public Process(int processId, string name, string fileName, string arguments, bool isNative)
        {
            ProcessId = processId;
            IsNative = isNative;
            Arguments = arguments;
            FileName = fileName;
            Name = name;
        }

        public string Name { get; private set; }
        public string FileName { get; private set; }
        public string Arguments { get; private set; }
        public bool IsNative { get; private set; }
        public int ProcessId { get; private set; }

        public override string ToString()
        {
            return string.Format(@"p: {0} {1} ({2})", Name, Arguments, ProcessId);
        }
    }
}